-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Charge for size and witnesses #791
Conversation
Codecov Report
@@ Coverage Diff @@
## master #791 +/- ##
==========================================
+ Coverage 38.73% 43.57% +4.83%
==========================================
Files 176 177 +1
Lines 12489 12547 +58
==========================================
+ Hits 4838 5467 +629
+ Misses 7651 7080 -571
Continue to review full report at Codecov.
|
I think I get the idea.. reuse network fee to cover system fee costs too, right? |
Currently you don't pay for verification execution, with thi change you will pay |
Why not using |
Why we don't unify both fees in only one? |
|
Do you think that fees to CN are important, Erik? |
Should we charge both the transaction size and the verification? Or should take the maximum of them? |
I think that in verification we should pay for both, and in the invocation for the script execution. @vncoelho ripple could create more when they want 😂 |
But for me, only neo holders should receive the gas, CNs doesn't need it because, ussally, they are holders |
So the algorithm is:
Is it correct? Another way is:
|
I preffer the first one |
I think that we should have only one fee field, and CNs take his part from the same field. |
@erikzhang @shargon I like a lot this direction. Could we consider Turing incomplete design for verification? So we dont even need to charge for length, only verification. So I propose option 3: xD If not possible, I go with Erik option 1: netcost = verifcost + transmission cost
Unified fee system is nice too. verification fee would go to CN, integer invocation fee to claims, and the rest burned? |
We should remove low priority transactions from |
I am worry about receiving Neo in my wallet and not being able to transfer it because i don't have enough gas. Other blockchains use the same token, so they could not have this problem, but we have two |
Don't worry. In NEO 3.0, we will distribute some gas in genesis block. |
but if one user receive one neo, how much time he need to wait for generate enough gas for transfer it? |
Done from my side |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Trying to make blockbase serialization more readable.
In other PR please |
But I'm not understanding it hahaha |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good work, let's move on!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Water flows, as well as us. aheuahuea
Let's move forward, continue discussions and evolve.
Merge? |
Merge, merge, merge... 😂 |
* fix issue neo-project#791 * follow up * follow up * add example
* Fee= VerificationCost+ApplicationCost * NetworkFee for verification * Clean * Clean * Update * Remove priority from Policy and MemoryPool * Fix CalculateFee * Allow to cancel transactions with more Gas * Revert change We need to test this first * Add Cosigners * some fixes * Update Transaction.cs * format * fix overflow * fix `Wallet.MakeTransaction()` * fix `Transaction.CalculateFees()` * remove contract get from verification * Revert "remove contract get from verification" This reverts commit 6d0dad2. * Fix fee calculation * fix * fix tests * Update MemoryPool.cs * fix tests * UT - Good calculation! * Clean * Revert Nep5Token.cs * Revert conditional * Improve readability * Revert "Improve readability" This reverts commit cd61b98. * Possible fix for unit test * Error verbosity * Add using for ApplicationEngine * Fix unit test * more readable merkleroot test * Sample for multisig contract * Sign ut * Signed! * Same format for single signature unit test * Prevent create unwanted objects * format * Remove `snapshot` from `MakeTransaction()` * Rename * format * using json based NEP6Wallet import * at least using read serializable array * revert last commit
Closes #840